La transition de script à programmation en R marque le passage de l'exécution d'instructions isolées et interactives à la construction de pipelines automatisés et évolutifs. Cette évolution implique l'organisation des données dans des conteneurs robustes tels que vecteur, matrice, facteur, tableau, et liste pour gérer des architectures d'information complexes.
1. Flux de contrôle programmé
Au lieu de répéter manuellement, nous utilisons des blocs logiques pour gérer la complexité. R fournit des mécanismes structurés de flux de contrôle :
- Itération :
for (nom in expr_1) expr_2,while (condition) expr, etrepeat expr. - Conditions :
if (expr_1) expr_2 else expr_3pour la branche logique et le fonctionnement vectoriséifelsepour des décisions élément par élément.
{ expr_1 ; ... ; expr_m }
2. Pensée vectorisée et application fonctionnelle
La programmation en R utilise l'itération fonctionnelle pour traiter les structures de données sans boucles explicites. Les fonctions telles que apply, lapply, sapply, et tapply vous permettent de mapper une logique sur des tableaux ou des listes. Par exemple, en utilisant split pour regrouper un tableau de données par un facteur puis en appliquant une moyenne, variance, ou sqrt(sum(x)) calcul réduit considérablement la dette technique et les erreurs.